package com.hifar.test.unitstandardrelation.pojo;

import java.io.Serializable;
import java.util.Date;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.hifar.plat.AopOption.Dict;
import com.hifar.plat.AopOption.Excel;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
* <p>
* 项目-检测项目-标准
* </p>
*
* @author wangkepeng
* @since 2024-12-05 09:22:13
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("HF_PRJ_UNIT_STANDARD")
@ApiModel(value = "HfPrjUnitStandard对象", description = "项目-检测项目-标准")
public class HfPrjUnitStandardVo implements Serializable{

    private static final long serialVersionUID = 1L;

    /**
    * 标准名称
    */
    @Excel(name="标准名称",sort=1)
    @ApiModelProperty(value = "标准名称")
    @TableField("STANDARD_NAME")
    @JSONField(name = "standardName")
    private String standardName;
    
    /**
    * 标准编码
    */
    @Excel(name="标准编码",sort=1)
    @ApiModelProperty(value = "标准编码")
    @TableField("STANDARD_CODE")
    @JSONField(name = "standardCode")
    private String standardCode;
    
    
    /**
    * 状态
    */
    @Excel(name="状态",sort=1)
    @ApiModelProperty(value = "状态")
    @TableField("status")
    @JSONField(name = "status")
    private String status;


    /**
    * 密级
    */
    @Excel(name="密级",sort=1)
    @ApiModelProperty(value = "密级")
    @TableField("secret_level")
    @Dict(dictCode = "hf_sys_datasecret")
    @JSONField(name = "secretLevel")
    private String secretLevel;


    /**
    * ID
    */
    @Excel(name="ID",sort=1)
    @ApiModelProperty(value = "ID")
    @TableId("ID")
    @JSONField(name = "id")
    private String id;


    /**
    * 租户ID
    */
    @Excel(name="租户ID",sort=1)
    @ApiModelProperty(value = "租户ID")
    @TableField(value = "TENANT_ID", fill = FieldFill.INSERT)
    @JSONField(name = "tenantId")
    private String tenantId;


    /**
    * 检测项目ID
    */
    @NotNull(message = "项目不能为空!")
    @NotEmpty(message = "项目不能为空!")
    @Excel(name="检测项目ID",sort=1)
    @ApiModelProperty(value = "检测项目ID")
    @TableField("UNIT_ID")
    @JSONField(name = "unitId")
    private String unitId;


    /**
    * 方法ID
    */
    @Excel(name="方法ID",sort=1)
    @ApiModelProperty(value = "方法ID")
    @TableField("STANDARD_ID")
    @JSONField(name = "standardId")
    private String standardId;


    /**
    * 是否默认  1 是 0 否
    */
    @Excel(name="是否默认  1 是 0 否",sort=1)
    @ApiModelProperty(value = "是否默认  1 是 0 否")
    @TableField("IS_DEFAULT")
    @JSONField(name = "isDefault")
    private Integer isDefault;


    /**
    * 备注
    */
    @Excel(name="备注",sort=1)
    @ApiModelProperty(value = "备注")
    @TableField("REMARKS")
    @JSONField(name = "remarks")
    private String remarks;


    /**
    * 排序
    */
    @Excel(name="排序",sort=1)
    @ApiModelProperty(value = "排序")
    @TableField("ROW_SORT")
    @JSONField(name = "rowSort")
    private Integer rowSort;


    /**
    * 创建用户ID
    */
    @Excel(name="创建用户ID",sort=1)
    @ApiModelProperty(value = "创建用户ID")
    @TableField(value = "CREATE_USER_ID", fill = FieldFill.INSERT)
    @JSONField(name = "createUserId")
    private String createUserId;


    /**
    * 创建用户名称
    */
    @Excel(name="创建用户名称",sort=1)
    @ApiModelProperty(value = "创建用户名称")
    @TableField(value = "CREATE_USER_NAME", fill = FieldFill.INSERT)
    @JSONField(name = "createUserName")
    private String createUserName;


    /**
    * 创建时间
    */
    @Excel(name="创建时间",sort=1)
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "CREATE_TIME", fill = FieldFill.INSERT)
    @JSONField(name = "createTime")
    private Date createTime;


    /**
    * 更新用户ID
    */
    @Excel(name="更新用户ID",sort=1)
    @ApiModelProperty(value = "更新用户ID")
    @TableField(value = "UPDATE_USER_ID", fill = FieldFill.INSERT_UPDATE)
    @JSONField(name = "updateUserId")
    private String updateUserId;


    /**
    * 更新用户名称
    */
    @Excel(name="更新用户名称",sort=1)
    @ApiModelProperty(value = "更新用户名称")
    @TableField(value = "UPDATE_USER_NAME", fill = FieldFill.INSERT_UPDATE)
    @JSONField(name = "updateUserName")
    private String updateUserName;


    /**
    * 更新时间
    */
    @Excel(name="更新时间",sort=1)
    @ApiModelProperty(value = "更新时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "UPDATE_TIME", fill = FieldFill.INSERT_UPDATE)
    @JSONField(name = "updateTime")
    private Date updateTime;


    /**
    * 0未删除1已删除
    */
    @Excel(name="0未删除1已删除",sort=1)
    @ApiModelProperty(value = "0未删除1已删除")
    @TableLogic
    @JSONField(name = "delFlag")
    private Integer delFlag;


    /**
    * 章节描述
    */
    @Excel(name="章节描述",sort=1)
    @ApiModelProperty(value = "章节描述")
    @TableField("CHAPTER_DESCRIPTION")
    @JSONField(name = "chapterDescription")
    private String chapterDescription;

}